Introduction

NIYoW, Name It Your Way, is a professional utility for mass renaming of files and folders.

NIYoW is perfect for digital images, documents, music files or any other collection of files and folders you have. Use the unique advanced rule based system to build a set of renaming actions and apply them to your files. Dynamically create the names using dozens of available variables and match the files exactly to your needs. By using this sophisticated system, NIYoW gives you a complete answer to almost every possible renaming task!

NIYoW also includes the following features:

  • Special Properties Editor for updating the time stamp and attributes of single or multiple files at once!

  • Powerful ID3 tag editor for updating single or multiple tags with just a few clicks!

  • Tag Generating Wizard for creating ID3 tags from file names with step by step instructions!

Copyright © 2004 MC Software
All rights reserved


Features

Main Features:

  • Mass renaming of file and folder collections using system of rules
  • Rule editing with import / export capability of rule collections
  • Dynamic name generation using variables
  • Use information from JPEG, MP3, MS Office, MIDI and HTML files to generate the new names!
  • Update summary information of multiple documents at once!
  • Update the time stamp of files and folders in batch!
  • Prevent creation of duplicated names using the Anti-Duplicate system
  • File and folder renaming wizard with common renaming tasks
  • Instant and manual preview of the new names before renaming
  • Undo last renaming task
  • Set attributes of files/folders from different locations in batch!
  • Generating ID3 tag from filename
  • MP3 ID3 tag editor (Supports ID3v1 & ID3v2)
  • Setting values of ID3 fields in multiple MP3 files
  • Detailed renaming report and event logging


Using the Wizard

When you run the program for the first time, a wizard will show up. This wizard will help you to complete common renaming tasks with minimal effort. The wizard will help you through the whole renaming process from the first step of selecting files to the final step of renaming them.

When you reach to the page of selecting a task, please follow steps one to three in order to select a suitable task. When you're done, press the Next button to create a preview according to the task you've selected.


Selecting Files

Before you can rename files, you have to select the files you want to be processed. There are two modes you can use to select files: Scan mode and List mode.

Scan Mode

Use this mode when the files you are about to rename are on the same folder. In this mode, you need to select the folder where the files reside, edit the file filter (to retrieve only files you want to rename), and then press the Scan button. The scanning progress will start and the retrieved files will be added to the list. You can also drag a folder from Windows Explorer to the list to scan its content.
By default, the files will be automatically checked for renaming (Can be changed in the Options window). You can skip files you don't want to be renamed. To do so, simply uncheck the names and they won't be processed.

Figure 1.1

Options in this mode:
Filter: The filter is used to minimize the search results. You can use wildcards as filter. Wildcards are characters like asterisks (*) and question marks (?) represents character you don't know exactly what it is. For example, the "file*.exe" will search for files that their title starts with the word "file" and has the "exe" extension.
Folder only: Check this box to search for folders instead of files.
Include Sub-Folders: Check this box to indicate that you would like to search within sub-folders too.
Filter by Attributes: Check this box to filter the scanning results. Use the Edit Filter button to pop-up the Filter window as shown in figure 1.2:

Figure 1.2

Mark the type of files/folders you do NOT want to retrieve and press OK to apply changes.

Sort by: Use it to sort the list (Can be also done using a rule).
Check all / Uncheck all: Use this button to select or deselect files to process. Unchecked files will be skipped.

NOTE: Although the above instructions refer to files, the same process is done in order to retrieve folders. To scan folders instead of files, check the Folders Only button and press the Scan button. The user interface will be matched to the new mode automatically.

List Mode

The seconds mode, called List mode, is used to add files or folders from several locations on your computer. Use the Add button to pop-up the Add menu. Select the Add File(s) option (in files mode only) to add files from one location or select the Add Folder(s) option to add a whole folder and/or its sub-folders. You also have the option to drag & drop files and folders from Windows Explorer to the list.

Figure 1.3

NOTE: Use the arrows to move the items in the list up and down. This is useful when using rules that depends on the location of the item in the list such as the "Create new names from list" and the Auto-Numbering rules.

Options in this mode:
Add: Add files or folders to the list. You can also use the Import List from File option to import a list of files or folders from a text file. You can create a text file with all the files or folders you would like to add using some text editor (Notepad for example) and then load it to the list.
Remove: Remove items from the list.
Select: Select / deselect items in the list.
Check: Check / uncheck items in the list. Only checked items will be processed.
Sort: Use it to sort the list (Can be also done using a rule).
Folder only: Check this box to search for folders instead of files.
Instant Preview: Check this box to enable an instant preview of the naming process. For more details, please refer to "The Instant Preview Mode" section.

Export the list to file

In every one of the modes you have the option to export the list to text or html file. After you add the files, simply right click on the list, select "Export List To" and select the desired output format:

  • Text File: Generates a simple text file with the content of the list.
  • HTML File: Generates HTML file with the content of the list. The data will be inserted into table, divided into Path and Name columns.

Select the mode that is most suitable to your needs, add files / folders to the list, and proceed to the next step. Note that items will be processed in the same way no matter on which mode you are.


Adding & Editing Rules

The next step is adding rules. What are rules?
Rules are sentences with specific renaming orders which apply to the name of the files or the folders. if you have ever used older versions of NIYoW, you probably noticed that the system has been completely changed. The new system is much more friendly and easy to understand. Every rule has the following parts:

  • Category – The category which the rule belongs to.
  • Rule - The name of the rule, also describes its functionality.
  • Parameters - Every rule can have one or more parameters, controlling the way the rule will be processed.
  • Values - The lowest level field, where you set the value of parameters.

 Figure 1.4

Now that you understand the basic parts of each rule, follow the instructions below to add a rule:
In order to bring up the Add New Rule window, press the Add button from the Added Rule frame at the bottom of the main window. The steps you should take are represented by the numbers "1" to "4": "1" represents the first step while "4" represents the final step step you should take before adding the rule.
Now lets start adding rules by first selecting a category from one of the following available categories:

  • Title & Extension - Set of rules for to adding, trimming and changing the content of the name.
  • Auto Numbering - Set of rules for adding auto-numbers in different ways.
  • Letters - Set of rules for changing the characteristics of the letters in the name.
  • Sorting - A rule for sorting the list in 6 different modes: by name, modification date or size, ascending or descending.
  • Spaces - Set of rules dedicated to the spaces in names: removing spaces, compressing spaces, etc.
  • Miscellaneous - Rules that do not fit into one of the above categories.

When a category is selected, the available rules are automatically matched to it. To view only basic rules, please make sure that the "View Advanced Rules" check box isn't marked.
Now select one of the available rules. A list of parameters will be created with default values. You can look at the list of parameters to examine the values and then click on each parameter to set its value. When a parameter is selected, the value field below will be set with the current value.
There are four main types of value:

  • Normal Text Box - Can be filled with any legal filename characters or numbers (depends on the specific parameter you edit)
    Figure 1.4.1:
  • Text Box with Variables - Can be filled with any legal filename characters and/or variables (a list of available variables can be shown by pressing ALT+V or pressing the "V" button). You can get more details about variables in the Understanding Variables section.
    Figure 1.4.2:

  • Combo Box - This field is used to select a value from a predefined list of values.
    Figure 1.4.3:

  • Text Box with Browse Button - Can contain any valid path to file. Used for specifying input files.
    Figure 1.4.4:
  • Radio Buttons - Used when 2-3 values are available for selection.
    Figure 1.4.5:

You can use the list of parameters above to switch between the parameters and edit their values. When you're done, press the Add button to add the rule to the list of rules.

You can add as much rules as you need. Every rule you add is being inserted into the list of rules on the bottom corner of the main window as shown in figure 1.4:

Figure 1.5

To view the full detailed description of the rules you have added, move the mouse over the desired rule and a tooltip with full description of the rule and all of its parameters and their values will pop up, as shown in figure 1.6:

Figure 1.6

Using the Added Rules frame you can add, edit and remove rules from the list.
Rules are applied in the order they are appear in the list. To change the order of the rules, you can use the arrows on the right pane.
Every rule can be unchecked to indicate that it won't be processed during the next preview. This is very efficient whenever you need to temporarily disable a rule from a set of rules. Use the Export button to save a list of rules to a file and use the Import button to load sets from file.

Updating an Existing Rule
You can update an existing rule at any time, by clicking on it and the using the Edit button. The Add Rules window will be shown and will be filled with the rule's details as shown in figure 1.7:

Figure 1.7

Edit the details and when you're done, press the Update button to apply the changes or press the Cancel button to cancel them.

When the list of rules is ready, proceed to the next step of generating a preview. If the Instant Preview mode is enabled, the new names preview will be already available in the New Name column. Examine the new names, and when you're sure the results are as you wish, press the Rename button.

If the Instant Preview option isn't enabled, please proceed to the next step by pressing the Preview & Rename button to create a preview of the new names.


Previewing Results & Renaming

OK, so you have selected the files, created a set of rules, what's next?

The most important part before renaming files is the preview. Pressing the Preview & Rename button will bring up a window, where you can see and predict the renaming results, as shown in figure 1.8:

Figure 1.8

The results are separated into four columns: Path, Old Filename, New Filename and Validation.

  • Path is the location of the file on the disk.
  • Old Filename is the filename before the changes.
  • New Filename is the filename with the applied rules.
  • Validation indicates if the new name is valid. "OK" means the name is valid while "Failed" indicates that some data for the new name is missing or that one of the rules could not be fully applied to this name. This item will be automatically removed from the renaming process. Example: You set a file to get its mp3 title value and the file doesn't have a title.

Right-click anywhere on the list to bring up the List Edit menu:

  • Check menu - Check items. Only checked items will be renamed.
  • Uncheck menu - Uncheck items. Unchecked items will be skipped.
  • Invert Checked Items - Invert the mark state of every item.
  • Check Only Valid Names - Checks only items marked as valid.

To start the renaming press the Rename button and wait. You can stop the renaming process at any time by pressing the Stop button

NOTE: You can undo changes of the last renaming process by using the Undo button on the main window.


Using the ID3 Tag Editor

NIYoW includes a great tool for editing single/multiple mp3 tags.
The editor support 2 types of tag: ID3 v1.x and ID3 v2.x

NOTE: ID3 v2.x is newer but isn't supported by all players. If you want to ensure that you can see the tag in all players, fill both ID3 v1.x and ID3 v2.x.

The editor can be opened in 3 modes:

  • Single tag editor

    This mode is opened when you select a single file as shown in figure 2.1:

     Figure 2.1
    In the Edit frame you can see the ID3 tag with checkbox near every field. This checkboxes determines if the field will be updated when you press the Update button.
    Press the Update button the set the new tag.
    On the bottom left corner you can see additional information about the file.

  • Multiple Tags Editor in Separated Mode

    This mode is opened when you select multiple files and answer yes when asked if you want to edit each tag separately as shown in figure 2.2:

    Figure 2.2
    This mode is identical to the single mode except that it has also a Skip and Skip All buttons.
    Use the Skip button to leave the current tag unchanged and move to the next file.
    Use the Skip All button to close the editor.

  • Multiple Tags Editor in Mixed Mode

    This mode is opened when you select multiple files and answer no when asked if you want to edit each tag separately and is shown in figure 2.3:

    Figure 2.3
    In this mode you edit one tag for all files. The system searches for identical fields and adds it to the new template tag. Now you need to insert the values you want to be in all tags and press the Update button (note that only checked fields will be updated to files while retaining the other fields unchanged). Now all files will have the same tag as the template.

Buttons:

Clear fields - Clears all fields in the tag

ID3v1 ==> ID3v2 - Copy the content of ID3 v1.x tag to ID3 v2.x
ID3v2 ==> ID3v1 - Copy the content of ID3 v2.x tag to ID3 v1.x

Bypass update of id3v1 - Check this box if you don't want to update the ID3 v1.x tag.
Bypass update of id3v2 - Check this box if you don't want to update the ID3 v2.x tag.

Copy ID3 - Clear the selected fields into memory.
Paste ID3 - Paste the copied ID3 fields from memory to the corresponding fields.


Using the Tag Generating Wizard

NIYoW includes a very powerful tool for generating ID3 tags from filenames. This tool enables you to use file name to generate a new ID3 tag in just a few clicks.

The wizard will guide you through the whole process from the first step of selecting files to the final process of generating the new tags.

After selecting the files to process, NIYoW offers you two methods of tag generating:

  • Using preset structures - This method is the simpler one and lets you generate the tags form your filenames using preset filename structures. Simply choose a structure that is most similar to your files and you're done. NIYoW will automatically add the appropriate actions and will take you directly to the tags preview step.
    You can also set to which tag the imported fields will be applied: ID3v1.x, ID3v2.x or both, and also choose to clear the tags before updating.

  • Using manual set of actions - In this mode, you create the actions from scratch. After choosing to create the set manually, you'll be redirected to the Actions Editor, where you can add your own actions.

I will explain in more detail about the manual editing of action sets, as shown in figure 3.1:

Figure 3.1

In this step, you determine how you want your tag to be. You accomplish this task using the action rules. The format of action is:
"Generate Field from text in filename before TextBefore and after TextAfter (Search from last position: True/False)

First, you determine the field you want to update using the Field value, then you need from where in the filename you want to take the value. The TextBefore and the TextAfter value tells the system to take all text before BeforeText and after AfterText.
Use the Search from last position checkbox to determine if you want to start the current search action from the position in filename where the last action ended otherwise the search will start from the beginning of filename.

Example:

Filename: MC Sounds - Through Your Mind [2003].mp3

Actions:
Field: Artist, BeforeText: "-", AfterText: ""
Field: Title, BeforeText: "[", AfterText: ""
Field: Year, BeforeText: "]", AfterText: "["

Will result in this ID3 tag:
Title: Through Your Mind
Artist: MC Sounds
Year: 2003

NOTE: Other tag fields are not effected unless you checked the "Clear every id3v1 tag before updating" (for id3v1 tags) or "Clear every id3v1 tag before updating" (for id3v2 tags), which will clear the tag completely before generating the new one.Now, when you click the Next button, you see the preview window, as shown in figure 3.2:

Figure 3.2

In the preview window you can preview the new generated tags, when you are sure the results are fine, click the Generate and you are done!


Collection Attributes

The Collection Attributes window enables you to set attributes of file and folder collections from several locations in your computer.

If you are in Scan Mode, select the folder where the items reside, press the Scan button and when the scanning is done, check the items you want to update, right click the mouse button and choose Properties.
If you are in List Mode, add the items to the list, press the right click button and choose Properties.

The attributes window will pop- up. When all details are loaded, the following screen will show up as shown in figure 4.1:

Figure 4.1

Now you can navigate through the two tabs: Attributes and Document

The Attributes Tab

In this tab, you can do the following:
 Set attributes of files and folders:
In the Set Attributes frame you can set, clear or leave unchanged attributes of the items. You can change the Read-Only, Hidden, System and Archive attributes for files and folders.
When loaded, the available checkboxes for each attribute are:

  • (Unchecked) - The selected attribute is currently cleared for all items.

  • (Checked) - The selected attribute is currently set for all items.

  • (Grayed) - The selected attribute is not equal for all items.

Now, you can change the attributes for all items by marking the relevant checkbox as follows:

  • (Unchecked) - Clear this attribute for all items.

  • (Checked) - Set this attribute for all items.

  • (Grayed) - Leave this attribute unchanged for all items.

Set the time stamp of files and folders:
 In the Set Time Stamp frame you can set one time stamp for a group of files or folders. You can set the date, time or both date and time values.
When loaded, there are two available checkboxes modes for both the date and time fields:

  • (Grayed) - At least one value is different. The current system time stamp is shown.

  • (Checked) - All values are equivalent. The shown time stamp is as retrieved from the files or the folders.

Now, you can set one time stamp for all items by marking the relevant checkbox as follows:

  • (Unchecked) or [image] (Grayed) - Leave this value unchanged.

  • (Checked) - Set this value for all items.

Note that you must check any field before you can change it. Unchecked or grayed fields are locked.

NIYoW also enables you to automatically set the date and time fields of files using one of eight different sources. To enable automatic date and time generation, press the "Set By" button next to appropriate date field you would like be changed. A windows with the available sources will be opened. Now you can choose one of 9 source types:

  • File, Time & Date Created - The time the file was created.

  • File, Time & Date Modified - The time the file was last modified.

  • File, Time & Date Accessed - The time the file was last accessed.

  • JPEG, Time & Date Picture Taken - The original time the image was taken. Applies only to JPEG files.

  • JPEG, Time & Date Last Modified - The time the image was last modified. Applies only to JPEG files.

  • Document, Time & Date Created - The time the document was created. Applies only to MS Office documents and files reside on NTFS volumes.

  • Document, Time & Date Last Printed - The time the document was last printed. Applies only to MS Office documents and files reside on NTFS volumes.

  • Document, Time & Date Last Saved - The time the document was last saved. Applies only to MS Office documents and files reside on NTFS volumes.

  • Manually - Set the time & date manually.

Note that files that are not supported by the source type will be ignored automatically.

Select the mode you need and press OK to apply or Cancel to leave the current mode unchanged.

The Document Tab

The Document tab enables you to set the details of multiple documents at once. Documents are defined as Microsoft Office documents and files that reside on NTFS volumes. Whenever you select files that doesn't have the summary information available, a warning note will be shown to indicate the those specific files will be ignored during the save process.

Each field in the Document tab has a check-box next to it with one the 3 following modes:

  • (Unchecked) or [image] (Grayed) - Leave this field unchanged.

  • (Checked) - Set this field for all items.

Make the changes you need and press the OK button to update the selected files.

The "Update Results" Window

When the update process is done, a new window will open with the updating results. In this window you can review each file individually and view the results of each part of the update process.

Each update is divided into 5 sub-update processes:

  • AT = Attributes - The attributes of the file/folder.

  • CR = Created Date - The creation date of a file/folder.

  • MD = Modified Date - The last modification date of a file/folder.

  • AC = Accessed Date - The last access date of a file/folder.

  • DC = Document - The summary information of a document. Available only for MS office documents and files that reside on NTFS volumes.

Each sub-update process result is marked as follows:

  • O = Updated successfully

  • X = Failed to update

Example of the Update Results window is shown below:

Figure 4.1

.When done, press the OK button to close this window


Single Item Properties

The Single Item Properties window enables you to view and edit the properties of a file or a folder. The window has several tabs as follows:

The General Tab
The General tab is available for all file and folder types shown in figure 5.1:

Figure 5.1

Use this tab to view information like path & size and set properties such as time, date, name and attributes.
Simply type the new name in the Name field, set the time stamp, change the attributes and press OK to apply changes.

The Summary Tab
In this tab you can also view summary information of MP3, MIDI, MS Office and JPEG files. When the information is available, the summary tab will be added as shown in figure 5.2:

Figure 5.2

The Preview Tab
When JPEG files are selected, the Preview tab is added as shown in figure 5.3:

Figure 5.3

Click on the image to view it in full screen. When in full screen, click on "Page Up" and "Page Down" to navigate between images.

The Document Tab
When Microsoft Office documents or files that reside on NTFS volumes are selected, the Document tab is also added as shown in figure 5.4:

Figure 5.4

In this tab you can edit the summary information of documents. Documents are defined as Microsoft Office documents (DOC, XLS, PPS, etc), and files that reside on NTFS volumes.

Navigating Between Items
Navigate between items by using the navigation buttons at the top right corner of the window.
Note that in order to update the details of multiple files or folders at once, use the Collection Attributes instead. The Single Item Properties window will pop-up when you select exactly one file. When you select more than one file, the Collection Attributes window will show up. Using this window you can set attributes of file and folder collections at once.


Understanding Rules

NIYoW was designed to give you a complete solution for all your renaming needs. To complete this task a system of rules was built.

Rules are sentences with specific orders which apply to the name of files. You add a set of rules and then the system applies them to the files or folders one by one. Rules are added using the Add Rule frame at the bottom left corner of the main window as shown in figure 6.1:

 Figure 6.1

Below is a list of the available rules. To get more information on every parameter, make sure that the option "View rule description" is checked in the Options window, then move the mouse over the rule and a tool tip with a detailed description will pop up (as shown above, in figure 2.1).

Category | Rule | Parameters | Description
Title & Extension | "Create a new name" | New Text; Apply To; | Generates a new title and/or extension from scratch
 | "Find and replace text" | Find What, Replace With, Apply To; | Replaces text in the name with a new one.
 | "Find and replace text (Advanced)" | Maximum Replacements; Find What, Replace With, Search Direction; Apply To; | Replaces text in the name with a new one. This rule is an advanced version of the above one. Enables you to limit the number of replacements and to determine the search direction.
 | "Find and replace using Regular Expression" | Search Pattern; Replace With; Replace All; Apply To; | Use Regular Expressions (also known as RegEx or RegExp) to manipulate the text. Detailed reference of the Regular Expression available parameters can be found in the Regular Expression Syntax topic. Requires Internet Explorer 5.0 and above.
 | "Attach text to edge of name" | Insert This; Insert Where; Apply To; | Attaches a text to one of the name edges.
 | "Add text at position" | New Text; Position; Search Direction; Apply To | Adds text at a specified position. Position is defined as number of characters from the start of the name, relative to the search direction.
 | "Remove characters from position" | Starting Position; Length; Removal Direction; Apply To; | Removes a number of characters as specified by the Length parameter, starting from the Starting Position parameter.
 | "Remove characters from edge of name" | Number of Characters; Remove From; Apply To; | Removes characters from one of the name edges.
 | "Remove characters (Advanced)" | Number of Characters; Find What; Remove From; Apply To; | Removes characters from a location in the name.
 | "Clear text found between two text instances" | Left Margin; Remove Left Margin; Right Margin; Remove Right Margin; Apply To; | Clears text found between a specified margins, with or without the margins.
 | "Replace text found between two text instances" | Left Margin; Remove Left Margin; Right Margin; Remove Right Margin; Insert This; Apply To; | Replaces text found between a specified margins, with or without the margins, with a new text.
 | "Set as line from text file" | Filename; Line Number; Start From; Length; Apply To; | Set the name as a text retrieved from a specific line within a text file.
Auto Numbering | "Set title as auto-number" | Numbering Type; Start With; Increment By; Minimum Width; Reset on Path Change; | Replaces the title with auto-number.
 | "Insert auto-number at position" | Numbering Type; Start With; Increment By; Minimum Width; Reset on Path Change; Find What; Insert Where; | Inserts auto-number before or after the found text.
 | "Insert auto-number at edge of title" | Numbering Type; Start With; Increment By; Minimum Width; Reset on Path Change; Insert Where; | Attaches auto-number to one of the title edges.
 | "Replace text with auto-number" | Numbering Type; Start With; Increment By; Minimum Width; Reset on Path Change; Find What; | Replaces text in the name with auto-number.
 | "Add zero padding to numbers" | Minimum Width; Maximum Replacements; Search Direction; Apply To; | Pads the numbers in the name with zeros.
 | "Add custom padding to numbers" | Pad With; Pad Where; Minimum Width; Maximum Replacements; Search Direction; Apply To; | Pads the numbers in the name with custom character/string. Also enables you to choose the padding location: from the left or from the right of the numbers.
 | "Auto-number duplicated names" | Numbering Type; Start With; Increment By; Minimum Width; Numbering Format; Search Where; | Auto-numbers duplicated names using the format specified in the Numbering Format parameter. In the numbering format, %number% represents the auto-number to be inserted.
Letters | "Change capitalization" | Capitalization Type; Apply To; | Capitalizes the name into one of the 8 different capitalization types.
 | "Change capitalization (Advanced)" | Capitalization Type; Apply To; Number of Words; Search Direction; | Capitalizes the name into one of the 8 different capitalization types. This rule is an advanced version of the above one. Enables you to limit the number of words to process and to determine the search direction.
 | "Set word separators" | Characters; | Set the characters that will act as word separators. Use it only when you need to use word separators other than the default.
 | "Set exceptions list " | Words; | Set the list of words you want to skip during the capitalization process. Separate each word with colons. Example: word1:word2:word3
Sorting | "Sort the list" | Sorting Type; Sorting Source; | Sorts the list. Effective in conjunction with the auto-numbering rule.
Spaces | "Remove spaces" | Type; Apply To; | Removes leading spaces, trailing spaces or both from the the title and/or the extension.
 | "Convert multiple spaces to one" | Apply To; | Converts every occurrence of multiple spaces to one space.
Miscellaneous | "Set the text comparison type" | Case Sensitive; | Determines the comparison type for all rules. Set to true to make the text comparison case sensitive.
 | "Set maximum name length" | Length; Apply To; | Sets the length (in characters) of the title or the extension.
 | "Create new names from list" | Input File; Read From Line; Insert From; | Creates new names according to the list of names specified in the Input File. You should not use names with paths. Paths will be omitted! You can also drag the input file from Windows Explorer to the Value field or use the Browse button instead of typing the path manually.
 | "Skip rule if causing validation error" | Skip Rules; | Creates a special condition that will be applied to all the following rules after this one. This condition enables you to ask NIYoW to skip rules that are causing validation errors. Validation error occurs whenever the rule cannot be completely applied to the name. For example, when you try to retrieve the Title field from an non-mp3 file.

NOTE: To view all the rules in the list, make sure that the "View Advanced Rules" checkbox is marked.

Parameters used to create a new text can contain static text or can be built up from dynamic data. The dynamic data is represented by variables. For more information about variables, please refer to the Understanding Variables section.


Understanding Variables

Every rule can be built up from static data or it can be filled with dynamic data using Variables.
Variables are recognized using this format: %variable%. By saying "dynamic data", it means that the data may change from file to file. In other words, the data within this variables depends in the current file or system information.
You can add static text and variables in the same text. For example the text "file size is %size_bytes% bytes" will result in "file size is 1000 bytes" for a file with a size of 1000 bytes.

The ELSE condition

In the simple format, between the percents we put the name of the variable we would like retrieve, like: %id3v1_artist%. For mp3 files, this will be replaced during the preview generation process with the value of the Artist field, found in the ID3v1.x tag of this music file.
In order to get over the problem where missing information results in empty names, the "ELSE" reserved word has been added. You use the ELSE word between variables to indicate an alternative variables when the last variables does not exist.

For example: %id3v1_artist ELSE id3v2_artist% means: "try to retrieve the Artist field from the ID3v1.x tag of the mp3 file, if you can't find it, try to retrieve the Artist field from the ID3v2.x tag of the file"

The special variable: %const=text%

A special variable lets maximize the ELSE condition even more!
The variable %const=text% indicates that a constant value, specified where it's written "text", will be added instead of this variable. In an ordinary situation, there is no reason to use such variable. So when do we need to use it?
This reserved word was implemented for use in conjunction with the ELSE word. For example, when generating the filename using the tags of mp3 files, many times, the file lacks one or more fields, and the result can be unexpectedly different from what you really meant.
Lets take the previous example: %id3v1_artist ELSE id3v2_artist%, what if you do not have the Artist field at all? the result will be empty text. With the const variable we can ask NIYoW to put some constant text when no other field can be found. We do it this way:

%id3v1_artist ELSE id3v2_artist ELSE const=No Artist%

The meaning is like the previous example with one important change: "try to retrieve the Artist field from the ID3v1.x tag of the mp3 file, if you can't find it, try to retrieve the Artist field from the ID3v2.x tag of the file, if you can't find any of the previous fields, put the constant value No Artist"

The special rule: "Skip rule if causing validation error"

But what if you don't want to put any value instead of the missing variable and just want to order NIYoW to skip the rule? You can do it!
A special rule was built especially for this issue, the "Skip rule if causing validation error" rule under the Miscellaneous category.
By default, all rules are processed, no matter what errors they are causing. Using this rule you can order NIYoW to skip rules that are causing validation errors.

You use this rule by putting it before the rules you want the apply this condition on with the value of the parameter Skip Rules set to True. Note that this rule will be applied to all rules coming after this one unless specified else! In order to cancel this special condition, put this rule again, now with the value of the Skip Rules parameter set to False. You don't need to add this rule to indicate that you want to process all rules since by default all rule are being processed.

The available variables are:

Category | Sub-Category | Variable | Description
System | Time | %curr_time[hh-mm]% | Current system time in hh-mm format
 |  | %curr_time[hh-mm-ss]% | Current system time in hh-mm-ss format
 |  | %file_created_time[hh-mm]% | The creation time of a file in hh-mm format
 |  | %file_created_time[hh-mm-ss]% | The creation time of a file in hh-mm-ss format
 |  | %file_accessed_time[hh-mm]% | The last time the file was accessed in hh-mm format
 |  | %file_accessed_time[hh-mm-ss]% | The last time the file was accessed in hh-mm-ss format
 |  | %file_modified_time[hh-mm]% | The last time the file was modified in hh-mm format
 |  | %file_modified_time[hh-mm-ss]% | The last time the file was modified in hh-mm-ss format
 | Date | %curr_date[dd-mm-yyyy]% | Current system date in dd-mm-yyyy format
 |  | %curr_date[mm-dd-yyyy]% | Current system date in mm-dd-yyyy format
 |  | %curr_date[yyyy-mm-dd]% | Current system date in yyyy-mm-dd format
 |  | %file_created_date[dd-mm-yyyy]% | The creation date of a file in dd-mm-yyyy format
 |  | %file_created_date[mm-dd-yyyy]% | The creation date of a file in mm-dd-yyyy format
 |  | %file_created_date[yyyy-mm-dd]% | The creation date of a file in yyyy-mm-dd format
 |  | %file_accessed_date[dd-mm-yyyy]% | The last date the file was accessed in hh-mm format in dd-mm-yyyy format
 |  | %file_accessed_date[mm-dd-yyyy]% | The last date the file was accessed in hh-mm format in mm-dd-yyyy format
 |  | %file_accessed_date[yyyy-mm-dd]% | The last date the file was accessed in hh-mm format in yyyy-mm-dd format
 |  | %file_modified_date[dd-mm-yyyy]% | The last date the file was modified in hh-mm format in dd-mm-yyyy format
 |  | %file_modified_date[mm-dd-yyyy]% | The last date the file was modified in hh-mm format in mm-dd-yyyy format
 |  | %file_modified_date[yyyy-mm-dd]% | The last date the file was modified in hh-mm format in yyyy-mm-dd format
Normal Files |  | %file_size% | File size in bytes (Bytes)
 |  | %fixed_size% | File size in fixed mode (Bytes, KB, MB, GB, TB)
 |  | %file_ext% | Current file extension (exe, bat, mp3, etc...)
 |  | %file_title% | Current file title (without extension)
 |  | %parent_folder% | The name of the parent folder
Mp3 files | ID3 v1.x | %id3v1_title% | S ong title
 |  | %id3v1_artist% | Artist name
 |  | %id3v1_album% | Album name
 |  | %id3v1_year% | Year
 |  | %id3v1_track% | Track number
 |  | %id3v1_genre% | Genre description
 |  | %id3v1_comment% | Comment field
 | ID3 v2.x | %id3v2_title% | Song title
 |  | %id3v2_artist% | Artist name
 |  | %id3v2_album% | Album name
 |  | %id3v2_year% | Year
 |  | %id3v2_track% | Track number
 |  | %id3v2_genre% | Genre description
 |  | %id3v2_comment% | Comment field
 |  | %id3v2_composer% | The composer of the song
 |  | %id3v2_origartist% | The original artist of the song
 |  | %id3v2_copyright% | C opyright field
 |  | %id3v2_url% | Link to an internet address
 |  | %id3v2_encodedby% | N ame of the person that encoded the file
 | Specification | %mp3_bitrate% | Mp3 bit rate (128Kbps, 160Kbps, etc...)
 |  | %mp3_frequency% | Mp3 frequency (22050Hz, 44100Hz, etc...)
 |  | %mp3_channels% | Type of channels (mono, stereo, etc...)
 |  | %mp3_playtime% | Play length (mm-ss)
HTML Files |  | %html_title% | The title of the html file
MIDI Files | General | %midi_format% | The format of the midi file
 |  | %midi_tracks% | Number of tracks in the file
 |  | %midi_timediv% | The time division used in the midi file
 | Track Information (The first track is 0) | %midi_track_title=track_number% | The title/sequence description
 |  | %midi_track_comment=track_number% | Comment for this track (usually appears in track 0)
 |  | %midi_track_marker=track_number% | Marker for this track (usually appears in track 0)
 |  | %midi_track_copyright=track_number% | Copyright information (usually appears in track 0)
 |  | %midi_track_instrument=track_number% | The name of the instrument (usually appears in track 0)
 |  | %midi_track_cuepoint=track_number% | Some mark of a new sound or action (usually appears in track 0)
 |  | %midi_track_tempo=track_number% | The track's tempo, measured in Beats Per Minute (BPM)
 |  | %midi_kar_lyrics% | Returns True if file has lyrics, else return False. Applies to KMIDI (Karaoke) files.
 |  | %midi_kar_title% | The title of the song. Applies to KMIDI (Karaoke) files.
 |  | %midi_kar_artist% | The artist name. Applies to KMIDI (Karaoke) files.
 |  | %midi_kar_copyright% | Copyright information. Applies to KMIDI (Karaoke) files.
JPEG Files | Image Specification | %jpeg_width% | The image width, in pixels
 |  | %jpeg_height% | The image height, in pixels
 |  | %jpeg_date[dd-mm-yyyy]% | The last date the image was modified in dd-mm-yyyy format
 |  | %jpeg_date[mm-dd-yyyy]% | The last date the image was modified in mm-dd-yyyy format
 |  | %jpeg_date[yyyy-mm-dd]% | The last date the image was modified in yyyy-mm-dd format
 |  | %jpeg_time[hh-mm-ss]% | The last time the image was modified in hh-mm-ss format
 |  | %jpeg_time[hh-mm]% | The last time the image was modified in hh-mm format
 |  | %jpeg_xres% | The X-resolution of the image
 |  | %jpeg_yres% | The Y-resolution of the image
 | Camera Specification | %jpeg_owner% | The owner of the camera
 |  | %jpeg_manufacturer% | The manufacturer of the camera
 |  | %jpeg_model% | The model of the camera
 |  | %jpeg_desc% | Description of the camera
 |  | %jpeg_software% | The software name and version used by the camera
 |  | %jpeg_copyright% | Copyright information for the camera
 |  | %jpeg_exp-time% | Exposure time (reciprocal of shutter speed). Unit is second.
 |  | %jpeg_fnum% | The actual F-number (F-stop) of lens when the image was taken
 |  | %jpeg_exp-prog% | Exposure program that the camera used when image was taken
 |  | %jpeg_iso-speed% | CCD sensitivity equivalent to Ag-Hr film speed-rate.
 |  | %jpeg_date-taken[dd-mm-yyyy]% | The original date the image was taken in dd-mm-yyyy format
 |  | %jpeg_date-taken[mm-dd-yyyy]% | The original date the image was taken in mm-dd-yyyy format
 |  | %jpeg_date-taken[yyyy-mm-dd]% | The original date the image was taken in yyyy-mm-dd format
 |  | %jpeg_time-taken[hh-mm-ss]% | The original time the image was taken in hh-mm-ss format
 |  | %jpeg_time-taken[hh-mm]% | The original time the image was taken in hh-mm format
 |  | %jpeg_shutter-speed% | The Shutter speed in seconds when the image was taken
 |  | %jpeg_aperture% | The actual aperture value of lens when the image was taken
 |  | %jpeg_brightness% | Brightness of taken subject, unit is EV.
 |  | %jpeg_exposure-bias% | Exposure bias value of taking picture. Unit is EV.
 |  | %jpeg_subject-distance% | Distance to focus point, unit is meter.
 |  | %jpeg_metering-mode% | Exposure metering method.
 |  | %jpeg_light-source% | The light source of the taken picture.
 |  | %jpeg_flash% | Flash used: Yes/No
 |  | %jpeg_focal-length% | Focal length of lens used to take image. Unit is millimeter
Documents | Summary | %doc_application% | The name of the application that created the document
 |  | %doc_title% | The title of the document
 |  | %doc_subject% | The subject of the document
 |  | %doc_author% | The document's author
 |  | %doc_manager% | An associated manager to this document
 |  | %doc_company% | The name of the company
 |  | %doc_category% | The document's category
 |  | %doc_keywords% | The document's keywords
 |  | %doc_comments% | Comments for the document
 |  | %doc_template% | The name of the template used to create the document
 | Statistics | %doc_byte_count% | The size of the document in bytes
 |  | %doc_char_count% | The number of characters in the document
 |  | %doc_allchars_count% | The number of characters (including spaces) in the document
 |  | %doc_line_count% | The number of lines in the document
 |  | %doc_page_count% | The number of pages the document contains
 |  | %doc_paragraph_count% | The number of paragraphs in the document
 |  | %doc_slide_count% | The number of slides in the presentation (PowerPoint)
 |  | %doc_word_count% | The number of words in the document
 |  | %doc_hidden_slides% | The number of hidden slides in a presentation
 |  | %doc_total_edit_time% | The total number of minutes the document was edited
 |  | %doc_last_edited_by% | The name of the last editor
 |  | %doc_presentation_format% | The format type name for a presentation
 |  | %doc_presentation_notes% | The number of notes in the presentation
 |  | %doc_revision_num% | The revision number
 |  | %doc_multimedia_clips% | The number of multimedia clips in a presentation
 |  | %doc_version% | The version of a Word or Excel document
 |  | %doc_date_created[dd-mm-yyyy]% | The date the document was created in dd-mm-yyyy format
 |  | %doc_date_created[mm-dd-yyyy]% | The date the document was created in mm-dd-yyyy format
 |  | %doc_date_created[yyyy-mm-dd]% | The date the document was created in yyyy-mm-dd format
 |  | %doc_date_printed[dd-mm-yyyy]% | The date the document was last printed in dd-mm-yyyy format
 |  | %doc_date_printed[mm-dd-yyyy]% | The date the document was last printed in mm-dd-yyyy format
 |  | %doc_date_printed[yyyy-mm-dd]% | The date the document was last printed in yyyy-mm-dd format
 |  | %doc_date_saved[dd-mm-yyyy]% | The date the document was last saved in dd-mm-yyyy format
 |  | %doc_date_saved[mm-dd-yyyy]% | The date the document was last saved in mm-dd-yyyy format
 |  | %doc_date_saved[yyyy-mm-dd]% | The date the document was last saved in yyyy-mm-dd format
 |  | %doc_time_created[hh-mm]% | The time the document was created in hh-mm format
 |  | %doc_time_created[hh-mm-ss]% | The time the document was created in hh-mm-ss format
 |  | %doc_time_printed[hh-mm]% | The time the document was last printed in hh-mm format
 |  | %doc_time_printed[hh-mm-ss]% | The time the document was last printed in hh-mm-ss format
 |  | %doc_time_saved[hh-mm]% | The time the document was last saved in hh-mm format
 |  | %doc_time_saved[hh-mm-ss]% | The time the document was last saved in hh-mm-ss format
Misc. |  | %random_letters=Length% | Creates a random string using the A-Z, a-z characters, with a length set by the Length value.
 |  | %random_numbers=Length% | Creates a random string using the 0-9 characters, with a length set by the Length value.
 |  | %random_letters_numbers=Length% | Creates a random string using the A-Z, a-z,0-9 characters, with a length set by the Length value.

NOTE: This list contains all the available variables. Variables for folders will be disabled by the system when you check the Folders Only button.

You can type the variables or you can view a menu by pressing ALT+V or using the CTRL+Left Mouse Button. The menu is shown is figure 7.1

Figure 7.1


The Instant Preview Mode

The instant preview mode enables you to predict the changes in real time. In this mode, every change you make to list of files, or the list of rules, activates the name preview process. To enable the Instant Preview feature, ensure that you're in List Mode and then mark the Instant Preview check box. When you enter this mode, an initial preview will be generated. The results will be shown in the "New Name" column. From now on, every change to make to the list of files or the list of rules, will activate the preview generation process. You can also initiate a manual refresh by choosing Refresh from the right-click menu.

By default, the new names will be marked with colors, according to their state, as shown in figure 8.1:

Figure 8.1

  • Valid Names - Marked with blue color, means that all of the rules are successfully applied to them.

  • Invalid Names - Marked with red color, means that one of the rules could not be successfully applied to them.

  • Skipped Items - Marked with grey color, means that these names are marked as unchecked and they were skipped.

You can change these colors, or completely disable colors from the Instant Preview tab, on the Options window.

NOTE: Not like the Preview & Rename window, in this mode, invalid names are not automatically unchecked, in order to save your selection intact. If you wish to uncheck all invalid names, use the "Uncheck Invalid Names" from the Check menu.

The Overload Sensor
Although the Instant Preview is a very handy feature, on slow machines or a huge files collections it may cause a long delays, since every change you make, requires a regeneration of the new names. To avoid a situation which your system hangs or delayed for long periods, an overload sensor is loaded. By default, the overload sensor is enabled every time an instant preview process is launched. If the preview process lasts more than the specified amount of time, you'll be prompt to disable the instant preview feature or wait for the process to end, as shown in figure 8.2:

Figure 8.2

Pressing Yes will stop the current preview process and will turn off the instant preview mode. You can set the timeout period before an overload is detected or completely disable it from the Options windows, under the Instant Preview tab.

Setting a Delay Period before each preview generation
Every change you make to the list of files or to the list of rules, requires regeneration of the preview. By default, the system will wait for 2 seconds after every change you make, in order to give you enough time to make other changes before the generation process will start again.

You can disable this feature, although it's not recommended. When you disable this delay period, every change you make, instantly generates a preview. This period gives you an option to do several changes before the process will be launched again.

To set a new delay period, go to the Options window, under the Instant Preview tab and set the "Wait before each preview generation" to a new timeout value or uncheck it to completely disable the feature.


Changing Options

You can customize NIYoW's options by using the Options button in the main window. The options window will open as shown in figure 9.1:

Figure 9.1

General

  • Maximize window on startup – If checked, maximizes program window on startup
  • Remember folder on exit – If checked, saves the current folder location, scanning options and filter type on exit.
  • Ask before exit – If checked, requests a confirmation before closing program.
  • Show splash screen – If checked, shows a splash screen on startup
  • Enable tip of the day on startup – If checked, shows miscellaneous tips on startup.
  • Cycle "Tip of the day" on status bar every seconds sec. - If checked, Cycles the "Tip of the Day" on the main window's status bar as specified in the seconds text box.
  • Show the renaming wizard on startup – If checked, enables the renaming wizard every time the program starts.
  • Auto-select files when scanning – If checked, automatically checks files after scanning folder.
  • Always on Top - If checked, sets all windows as always on top above other windows.

Instant Preview

  • Instant preview overload sensor: Seconds – When checked, enables the overload sensor. Specify the timeout for the sensor in the Seconds field. To disable the sensor, simply clear this check box.
  • Wait before each preview generation: Milliseconds - When checked, enables a delay period before each preview generation. Specify the delay period in Milliseconds field. Although not recommended , you can disable the delay by clearing this check box.
  • Mark new names with colors - When checked, marks the generated new names with colors, according to their state: Valid name, Invalid name, Skipped item.

For more details about the Instant Preview feature, please refer to the The Instant Preview Mode section.

Preview & Renaming

  • Case sensitive by default – If checked, makes the rules system case sensitive without the need of rule.
  • Warn before renaming [recommended] – If checked, warns every time you are about the rename files (highly recommended).
  • Replace invalid characters with char – If checked, replace every invalid character (/\:*?"<>|) in filenames with char.
  • Rename files marked as read-only – If checked, enables renaming of read only files.
  • Automatically add auto-number to duplicated new names - If checked, enables the anti-duplicate engine. Whenever a duplicated name is found, an auto-number is added as specified by the Format field. The variable %number% in the format indicates the new generated number. Use any text you want combining this variable to create a formatted auto-number.

Logging

  • Enable event logging – If checked, enables logging of events in program.
  • View Log - Use this button show view the log file.
  • Clear logs - Use this button to delete all log files from the disk.
  • Size limit: Unlimited – When logging enabled, sets the size of the log file unlimited.
  • Size limit: Maximum of size – When logging enabled, set the size of the log file to size.
  • When log file reaches maximum size: Overwrite old file – When logging enabled, indicates that the log file will overwrite the old one when it reaches it maximum size.
  • When log file reaches maximum size: Backup old and create new - When logging enabled, indicates that a new log file will be created and the old one will be backed up.

Language

  • Change Font - Use it to change the font's faces & character sets. If you can't use your language correctly it's probably because the character set isn't as the character set in your system. Change the character set to your language and press OK to save changes.

Press OK to apply changes or Cancel to discard changes.


FAQ (Frequently Asked Questions)

Question:

I want to build the name using the title from the mp3 file, but some of files doesn't have title, how can I get over it?
Answer:
One of the greatest enhancements of NIYoW, is the "ELSE" condition. Using this reserved word you can ask the system to try retrieve the title from the ID3v1.x tag or the ID3v2.x tag, or even set a constant value in case no title can be found. For example, in order to implement the above example, use the following variable: %id3v1_title ELSE id3v2_title ELSE const=No Title%.
The above variable means that NIYoW will try to get the title from the ID3v1.x tag, if it can't be found, try to retrieve the title from the ID3v2.x, if non of the previous values can be found, set the constant text "No Title"

Question:
Why do I see question marks (?) instead of the actual filename?
Answer:
Use the Language tab in the Options window and press the Choose Font button. On the Script section, match the script to your language.
For example, Israeli users should use the Hebrew character set users while Japanese users should use the Japanese character set.

Question:
I need to remove specific characters from the filename but I can't see any specific rules for this. Is there a way I can do it?
Answer:
When you need to remove characters, simply use the "Find and replace text" rule from the "Title & Extension" category. Fill the "Find What" parameter with the text you want to remove and leave the "Replace With" parameter empty. This way, every instance of the text you typed in the "Find What" will be removed.

Question:
I have a pictures collection and I would like to add to the start of every file its creation date, is there any way to do it?
Answer:
Of course! One of the most important features in NIYoW is the variables. Variables are dynamic values taken from the file and can be added to the name. When you create a rule, use the Alt+V combination and select the variable that you would like to add. You can also add variables manually by typing "%" (without the quotation marks) before and after the variable name. For example, to add the bit rate of mp3 files you need to use the %mp3_bitrate% variable, or simply use the Alt+V combination and then select "MP3 Bit rate".

Question:
I need to auto number a set of files, but I want to sort them and add the new numbers to the sorted list. Is that possible?
Answer:
 Yes it is. You can add the "Sort the list" rule from the "Sorting" category to sort the list by one of 6 different sorting types. Add it before the auto-numbering rule. This way, the list will be sorted and then the auto-numbers will be added. You can use more than one sorting rule in every set, according to your needs.

Question:
I need to rename a set of folders. How can I do it?
Answer:
To work on folders instead of files, check the Folders Only box, select the start point folder and press the Scan button.

Question:
When I press the Scan button, I get a full list of all the files in the directory. I don't want to process the rules on all of these files. Can I filter these results?
Answer:
If you want to minimize the scanning results, you can use the filter to specify which files you would like to retrieve.
For example, if you want to get all mp3 files that start with the letter "m", use the filter: m*.mp3
You can filter the results again individually by unmarking the check boxes of the items you don't want process.

Question:
In the Edit ID3 Tags window, what does the Copy ID3 & Paste ID3 buttons do? Why do I need it?
Answer:
Use this buttons to copy the current ID3 tag into memory and paste them to any other mp3 files you want. For example, you want to manually copy the content of some song's ID3 tag to other mp3 song. Edit the source file's ID3 tag, Press the Copy ID3 button, close the window, open the target file and press the Paste ID3 button. The target file now has the ID3 tag of the source file. You can use this method for more than one file.
Note that when you copy the ID3 tag, only checked fields will be copied. This way you can control the copied fields of the source ID3 tag.

Question:
I renamed a bunch of files but then I realized that I made a huge mistake. Can I recover the old names?
Answer:
Of course you can! NIYoW was designed to handle human errors. You can recover the old names by pressing the Undo button.
Note that you are unable to undo changes in the normal way when you already closed the program. In this case, you can use the /disasterrecovery command line argument. For more information, refer to the Command Line Arguments topic.

Have a question? Send it to support@niyow.com.


Command Line Arguments

NIYoW supports the following command line arguments:

/folder folder_name - Loads the contents of folder_name into list.
/rulesfile rules_file - Loads set of rules from rules_file into the existing rules set.
/disasterrecovery - Undo last recorded renaming task.

The /disasterrecovery argument

This option restores the last recorded renaming task.
While renaming tasks can be undone using the Undo button within NIYoW, this is only possible while the program is still open. When you close NIYoW, the memory is cleared and the recorded undo data is being erased.
However, there is still a way to restore the last renaming task even if you have already closed the program. Each time you close NIYoW, the program checks if there is undo data available and saves it. You can then restore the names by executing NIYoW with /disasterrecovery argument.
For example: "c:\program files\niyow\niyow.exe" /disasterrecovery

The following window will show up:

Figure 10.1

Pressing OK will restore the names from the last renaming process. Note that these changes cannot be undone!


Name It Your Way (NIYoW) - History

Version | Status | Description
1.6.2
(January 22nd, 2005) 		New Added support for Karaoke Midi files
Added the Disaster Recovery feature
Added command line options
Updated | Scan Mode's folder explorer and Add Folder window are now resizable
Fixed | Fixed small bugs
1.6.1
(December 25th, 2004) 		New Added rule to find and replace text using Regular expressions (Requires Internet Explorer 5.0 or
above)
Added rule to set the name as line from a text file
Updated | The Tag Generator is now even simpler with a new set of generating presets
Duplicate names rules now also checks for physical duplicates on the disk
Fixed | Fixed some CJK fonts display bugs
Fixed other small bugs

1.6.0
(December 1st, 2004)

New Automatically set the time & date of multiple files using 8 different sources
Retrieve information from MS Office documents: Author, Title, Company, etc

Set information of single/multiple documents at once!

New rule: Add text at position <New Text, Position, Search Direction, Apply To>
Drag and drop folders from Explorer to the folder field or type it manually
View report after setting collection attributes
Added the Anti-duplicate feature as a rule
Updated | Optimization of all inner functions!
Fixed | Fixed small bugs

1.5.2
(October 23rd, 2004)

 New Change the time stamp of files and folders in batch!
Show a preview of JPEG files in the properties window
Check for updates online
Added new rule to pad numbers with custom character/string
Updated | Retrieve JPEG date values in 3 different formats
Retrieve JPEG time values in 2 different formats
Fixed | Small bug fixes

1.5.1
(August 16th, 2004)

New New variables to generate random numbers/letters
Fixed | Fixed a bug in folders explorer where CJK fonts could not be shown correctly
Some other small fixes
1.5.0
(August 2nd, 2004)

New

New registration code. Will be automatically delivered to all registered users
Support for JPEG digital images. Retrieve information such as image dimensions, resolution, date taken, shutter speed, etc.
Two major changes to the system of rules:
  • New rule: "Skip rule if causing validation error"
  • New condition in variables. The "ELSE" condition for creating alternative variables in a single rule. Example: %id3v1_title ELSE id3v2_title%
Added a new variable, the %const=text% for use in conjunction with the "ELSE" condition in variables
View summary information of MP3, JPEG and Midi files in the properties window and also navigate between the files
Add optional comments to rules
New parameter to the "Create new names from list" to specify the first line in the file to start reading from
Sort names by numeric value
Remove successfully renamed files from list after renaming
Associated .RLS files with NIYoW + Drag & Drop .RLS files into the list of rules
Updated | 'Add/Edit Rule' is now in a separate window!
Two new parameter controls in the Add Rule window: radio buttons & browsing
Reorder or rules in categories (rule sets with reordered rules has to be rebuilt)
Edit/Duplicate existing rules in the Tag Generating wizard
Enhancement of all checkbox selection in wizards
Updated the folder explorer (is now like windows explorer)
Multiselection in the Added Rules list
Fixed | The rule "Create new names from list" wasn't processed for the last item in the list
Some rules were skipped even if they are checked or are giving different values when they are being edited
Many other small fixes
1.4.1
(June 25th, 2004) 		New Set NIYoW as Always on Top
New rule: 'Create new names from list' to import the new names from text file!
Option to control the position of items in the List Mode. Useful when using rules such as the 'Create new names from list' and the Auto-Numbering rules
Updated | New enhanced wizard!
Improved checking support in the Scan Mode and the Rules List
Fixed | Bugs related to language support
Bug caused omission of spaces of some midi fields
Bug caused files dragged from Windows Explorer to be imported without extension
1.4.0
(June 18th, 2004) 		New Support for MIDI files, retrieve information such as track title, MIDI file format, tempo, etc
Full report after renaming with detailed error handling
Set attributes of files and folders from different locations in your computer in one action!
Edit single item's properties such as name and attributes from within the program
Drag & Drop files and folders from Windows Explorer directly to the list!
Anti-Duplicates system to avoid creation of duplicated new names
Physically remove files from within the program
Remove dead links from list in one click
New rule: 'Remove characters from position' to remove a specified number of characters from a specific location in the name
Updated | The Sort by name rule can now sort items by the old name or the new name
Filter search results by all attributes (not only by the hidden attribute as the older versions)
Manually launch the instant preview to refresh the list
The instant preview now has a progress bar too
Improved help system. Press F1 in any place to view the related help topic
Huge amount of improvements such as faster file and folder searching, preview generation and sorting, etc
Fixed | Small bug fixes
1.3.0
(May 29th, 2004) 		New Instant preview of new names:
  • Automatic preview generation

  • Overload sensor to detect long delays during preview

  • Delay period before every preview generation

  • Mark new names with colors according to their state
Updated | Edit and duplicate exisiting rules
Display full details of rules by tooltip
Display full description of rule parameters by tooltip
New rule: Set an exceptions list for the letters rules
New rule: Add zero padding to numbers in the name
The encoding of exported HTML files is now matched to the selected language
Fixed | Lots of bug and small enhancements
1.2.1
(May 29th, 2004) 		New Export lists to Text/HTML file
Added a variable to retrieve the title of HTML files
Added an option to set the characters that will act as word separators in the letters category
Updated | Enhanced the rule of removing trailing spaces to be able to remove leading spaces too
Fixed | Fixed some bugs

1.2.0
(April 29th, 2004)

New

New enhanced rules system! (NIYoW Rules System v2.0, not compatible with older versions). Makes the rules system much easier to understand and comfortable to use
New files and folders listing mode. Enables you to add items from several locations.
New auto-numbering modes: Hexadecimal & Alphabetical
Renaming of files and folders from list.
New variable: Add the parent folder name (%parent_folder%)
Added an Edit menu in the Preview window.
Added check boxes to the list of rules, enables you to temporarily disable rules without the need to remove them
Updated | List sorting is now available also as a rule
Significantly improved the speed of list refresh after renaming
Improved GUI capabilities, enabling you to control the size of the main window's frames
Fixed | Small bug fixes

1.1.0
(February 10th, 2004)

New Renaming of folders!
Full support for all languages!
New date and time variables!
New set of icons! (by Mayan)
Cycling tips on status bar!
Fixed | Fixed some bugs


About NIYoW

NIYoW, Name It Your Way
Written by Maor Cohen, MC Software
All Rights Reserved © 2004

This software is provided "as is", without any guarantee made as to its suitability or fitness for any particular use. It may contain bugs, so use of this tool at your own risk. MC Software takes no responsibility for any damage that may be caused through its use.

MC Software will accept bug reports and will make all efforts to fix it on the next release. You can also send your suggestions and comments that you would like to see in the next version of NIYoW to support@niyow.com.


Regular Expression Syntax

Regular Expression in NIYoW is based on Microsoft's VBScript RegEx support. In order to use this feature, make sure you have Internet Explorer 5.0 or above. Log in to Windows Update web site to get the latest version.

A regular expression is a pattern of text that consists of ordinary characters (for example, letters a through z) and special characters, known as metacharacters. The pattern describes one or more strings to match when searching a body of text. The regular expression serves as a template for matching a character pattern to the string being searched.

Here are some examples of regular expression you might encounter:

Pattern | Matches
^\[ \t]*$ | Match a blank line.
\d{2}-\d{5} | Validate an ID number consisting of 2 digits, a hyphen, and another 5 digits.
<(.*)>.*<\/\1> | Match an HTML tag.

The following table contains the complete list of metacharacters and their behavior in the context of regular expressions:

Character | Description
\ | Marks the next character as either a special character, a literal, a backreference, or an octal escape. For example, 'n' matches the character "n". '\n' matches a newline character. The sequence '\\' matches "\" and "\(" matches "(".
^ | Matches the position at the beginning of the input string.
$ | Matches the position at the end of the input string.
* | Matches the preceding subexpression zero or more times. For example, zo* matches "z" and "zoo". * is equivalent to {0,}.
+ | Matches the preceding subexpression one or more times. For example, 'zo+' matches "zo" and "zoo", but not "z". + is equivalent to {1,}.
? | Matches the preceding subexpression zero or one time. For example, "do(es)?" matches the "do" in "do" or "does". ? is equivalent to {0,1}
{n} | n is a nonnegative integer. Matches exactly n times. For example, 'o{2}' does not match the 'o' in "Bob," but matches the two o's in "food".
{n,} | n is a nonnegative integer. Matches at least n times. For example, 'o{2,}' does not match the "o" in "Bob" and matches all the o's in "foooood". 'o{1,}' is equivalent to 'o+'. 'o{0,}' is equivalent to 'o*'.
{n,m} | m and n are nonnegative integers, where n <= m. Matches at least n and at most m times. For example, "o{1,3}" matches the first three o's in "fooooood". 'o{0,1}' is equivalent to 'o?'. Note that you cannot put a space between the comma and the numbers.
? | When this character immediately follows any of the other quantifiers (*, +, ?, {n}, {n,}, {n,m}), the matching pattern is non-greedy. A non-greedy pattern matches as little of the searched string as possible, whereas the default greedy pattern matches as much of the searched string as possible. For example, in the string "oooo", 'o+?' matches a single "o", while 'o+' matches all 'o's.
. | Matches any single character except "\n". To match any character including the '\n', use a pattern such as '[.\n]'.
(?:pattern) | Matches pattern but does not capture the match, that is, it is a non-capturing match that is not stored for possible later use. This is useful for combining parts of a pattern with the "or" character (|). For example, 'industr(?:y|ies) is a more economical expression than 'industry|industries'.
(?=pattern) | Positive lookahead matches the search string at any point where a string matching pattern begins. This is a non-capturing match, that is, the match is not captured for possible later use. For example 'Windows (?=95|98|NT|2000)' matches "Windows" in "Windows 2000" but not "Windows" in "Windows 3.1". Lookaheads do not consume characters, that is, after a match occurs, the search for the next match begins immediately following the last match, not after the characters that comprised the lookahead.
(?!pattern) | Negative lookahead matches the search string at any point where a string not matching pattern begins. This is a non-capturing match, that is, the match is not captured for possible later use. For example 'Windows (?!95|98|NT|2000)' matches "Windows" in "Windows 3.1" but does not match "Windows" in "Windows 2000". Lookaheads do not consume characters, that is, after a match occurs, the search for the next match begins immediately following the last match, not after the characters that comprised the lookahead.
x|y | Matches either x or y. For example, 'z|food' matches "z" or "food". '(z|f)ood' matches "zood" or "food".
[xyz] | A character set. Matches any one of the enclosed characters. For example, '[abc]' matches the 'a' in "plain".
[^xyz] | A negative character set. Matches any character not enclosed. For example, '[^abc]' matches the 'p' in "plain".
[a-z] | A range of characters. Matches any character in the specified range. For example, '[a-z]' matches any lowercase alphabetic character in the range 'a' through 'z'.
[^a-z] | A negative range characters. Matches any character not in the specified range. For example, '[^a-z]' matches any character not in the range 'a' through 'z'.
\b | Matches a word boundary, that is, the position between a word and a space. For example, 'er\b' matches the 'er' in "never" but not the 'er' in "verb".
\B | Matches a nonword boundary. 'er\B' matches the 'er' in "verb" but not the 'er' in "never".
\cx | Matches the control character indicated by x. For example, \cM matches a Control-M or carriage return character. The value of x must be in the range of A-Z or a-z. If not, c is assumed to be a literal 'c' character.
\d | Matches a digit character. Equivalent to [0-9].
\D | Matches a nondigit character. Equivalent to [^0-9].
\f | Matches a form-feed character. Equivalent to \x0c and \cL.
\n | Matches a newline character. Equivalent to \x0a and \cJ.
\r | Matches a carriage return character. Equivalent to \x0d and \cM.
\s | Matches any whitespace character including space, tab, form-feed, etc. Equivalent to [ \f\n\r\t\v].
\S | Matches any non-white space character. Equivalent to [^ \f\n\r\t\v].
\t | Matches a tab character. Equivalent to \x09 and \cI.
\v | Matches a vertical tab character. Equivalent to \x0b and \cK.
\w | Matches any word character including underscore. Equivalent to '[A-Za-z0-9_]'.
\W | Matches any nonword character. Equivalent to '[^A-Za-z0-9_]'.
\xn | Matches n, where n is a hexadecimal escape value. Hexadecimal escape values must be exactly two digits long. For example, '\x41' matches "A". '\x041' is equivalent to '\x04' & "1". Allows ASCII codes to be used in regular expressions.
\num | Matches num, where num is a positive integer. A reference back to captured matches. For example, '(.)\1' matches two consecutive identical characters.
\n | Identifies either an octal escape value or a backreference. If \n is preceded by at least n captured subexpressions, n is a backreference. Otherwise, n is an octal escape value if n is an octal digit (0-7).
\nm | Identifies either an octal escape value or a backreference. If \nm is preceded by at least nm captured subexpressions, nm is a backreference. If \nm is preceded by at least n captures, n is a backreference followed by literal m. If neither of the preceding conditions exists, \nm matches octal escape value nm when n and m are octal digits (0-7).
\nml | Matches octal escape value nml when n is an octal digit (0-3) and m and l are octal digits (0-7).
\un | Matches n, where n is a Unicode character expressed as four hexadecimal digits. For example, \u00A9 matches the copyright symbol (©).

NOTE: Reference originally taken from "Microsoft's Windows Script Technologies" help file. All rights reserved, Microsoft Corporation © 2001